﻿using System;
using System.Collections.Generic;
using CodeFirstMVC3.Core;
using CodeFirstMVC3.Domain.Model;

namespace CodeFirstMVC3.Domain.Service
{
    public interface IJobService
    {
        IJob New();

        void Add(IJob entity);

        void Edit(IJob entity);

        void Remove(IJob entity);

        IJob Get(int id);

        IJob Get(Func<IJob, bool> predicate);

        int GetCount(Func<IJob, bool> perdicate=null);

        IEnumerable<IJob> GetAll(Func<IJob, bool> predicate=null, int start = 0, int count = ApplicationSettings.PageSize);
    }
}
